Imports System.Xml.Serialization
Namespace Mapping

    Public Class AssociationSetModificationFunction
        Inherits XEntityModelElementBase

        ''' <summary>Initializes an instance of the <see cref="AssociationSetModificationFunction" /> class.</summary>
        ''' <param name="localName">The name of the new element.</param>
        Public Sub New(ByVal localName As String)
            MyBase.New(localName, CSXmlNamespace)
            ValidateLocalName(localName, New String() {"InsertFunction", "DeleteFunction"})
        End Sub

        ''' <summary>Initializes an instance of the <see cref="AssociationSetModificationFunction" /> class.</summary>
        ''' <param name="other">An <see cref="System.Xml.Linq.XElement"/> object to copy from.</param>
        Public Sub New(ByVal other As XElement)
            MyBase.New(other)
        End Sub

        Private __items As FunctionMappingEndPropertyCollection

        <AutoLoad()> _
        <XmlElement("EndProperty", GetType(FunctionMappingEndProperty))> _
        Public ReadOnly Property EndProperties() As FunctionMappingEndPropertyCollection
            Get
                If (__items Is Nothing) Then
                    __items = New EdmxEditor.Mapping.FunctionMappingEndPropertyCollection(Me, MyBase.Name.Namespace, "EndProperty")
                End If
                Return __items
            End Get
        End Property

        <XmlAttribute()> _
        Public Property FunctionName() As String
            Get
                Return Me.@FunctionName
            End Get
            Set(ByVal value As String)
                Me.@FunctionName = value
            End Set
        End Property

        <XmlAttribute()> _
        Public Property RowsAffectedParameter() As String
            Get
                Return Me.@RowsAffectedParameter
            End Get
            Set(ByVal value As String)
                Me.@RowsAffectedParameter = value
            End Set
        End Property

    End Class

End Namespace